import java.io.*;

public class RandomAccessFileTest {
    static public void p(String f, Object ... o) {
        System.out.printf(f, o);
    }

    static public void pl(String s) {
        System.out.println(s);
    }
    static public void main(String [] args) throws Exception {
        RandomAccessFile fp = new RandomAccessFile("./file.test", "rw");

        pl("初始指针位置: " + fp.getFilePointer());
        pl("文件大小: " + fp.length());

        pl("读第一个字节: " + (char)fp.read());
        pl("读第一个字节: " + (char)fp.read());
        pl("读第一个字节: " + (char)fp.read());
        pl("读第一个字节: " + (char)fp.read());
        pl("读一个字节后当前指针位置: " + fp.getFilePointer());
        fp.seek(5);
        pl("seek 5后当前指针位置: " + fp.getFilePointer());
        pl("seek 5再读一个字节: " + (char)fp.read());
        fp.write('Y');

        fp.setLength(100);

        fp.close();
    }
}
